Skip to content

为什么叫"显示屏模块"?ST7789 如何驱动 LCD?

很好的问题!我们一步一步来理解。


一、"屏幕"和"模块"有什么区别?

先从一个生活比喻开始

想象你买了一盏台灯:

  • 灯泡 = 只是发光的部件,本身不能独立工作
  • 台灯 = 灯泡 + 灯座 + 开关 + 电线,组合在一起才能直接使用

屏幕 / 模块区别 + 台灯类比

LCD 显示屏也是同样的道理:

概念类比说明
LCD 面板灯泡只是液晶玻璃本身,无法独立工作
显示屏模块台灯面板 + 驱动IC + 背光 + FPC 排线,组合后才能用

为什么要叫"模块"?

因为你手中的这块屏,不只是一片玻璃,它至少集成了四个部分:[LCD概述]

┌─────────────────────────────────┐
│         显示屏模块               │
│                                 │
│  ① LCD 面板(液晶玻璃)          │  ← 决定分辨率、色彩、可视角度
│  ② 背光源(LED灯条)             │  ← 液晶本身不发光,需要它提供光
│  ③ 驱动 IC(ST7789V2 芯片)      │  ← 接收单片机指令,控制像素显示
│  ④ FPC 排线(柔性电路板)        │  ← 对外的接口,连接单片机
│                                 │
└─────────────────────────────────┘

LCD显示屏模块结构分解

一句话总结:单独的 LCD 面板就像一片"哑巴玻璃",什么都做不了。加上驱动IC、背光、排线,封装成一个可以直接被单片机控制的整体,才叫做"模块"。"模块"这个词强调的是集成性可直接使用性


二、ST7789 是什么?它在模块里扮演什么角色?

先理解一个问题:单片机能直接控制液晶像素吗?

不能。

LCD 面板有 240×320 = 76,800 个像素点,每个像素点需要精确的电压控制才能显示颜色。单片机根本没有能力直接驱动这么多像素点——它既没有足够的引脚,也没有专门的电路。

这就是为什么需要 ST7789V2 驱动芯片

ST7789V2 的角色:翻译官 + 执行者

单片机                    ST7789V2               LCD 面板
(发命令)   ──SPI──►   (翻译 + 执行)  ──►   (显示画面)

ST7789V2 的角色

具体来说,ST7789V2 做了两件事:

① 控制电路:接收来自单片机的 SPI 信号,理解"要在哪里显示什么颜色" [LCD概述]

② 驱动电路:把理解到的内容转化为对应的电压信号,输出给 LCD 面板的每一个像素点

ST7789V2 内部有一个关键东西:GRAM

GRAM(图形显存) 是驱动 IC 内部的一块存储区域。

单片机  ──► 把像素颜色数据写入 GRAM ──► ST7789 读取 GRAM ──► 刷新到面板显示

这就像你在黑板上写字:

  • 单片机 = 拿粉笔写字的人
  • GRAM = 黑板(存储要显示的内容)
  • ST7789 = 把黑板内容投影到屏幕上的投影仪
  • LCD 面板 = 最终看到画面的屏幕

[SPI/I80 LCD硬件框图]

图片1

三、ST7789 驱动 LCD 的完整过程(逐步拆解)

第一步:初始化(开机配置)

单片机通过 SPI 向 ST7789 发送一系列初始化命令,告诉它:

  • 屏幕分辨率是多少(240×320)
  • 用什么色彩格式(RGB565,每个像素16位)
  • 扫描方向是什么
c
// 例如,ST7789 初始化时会收到这些命令:
LCD_WRITE_CMD(0x3A);      // 设置色彩格式
LCD_WRITE_DATA(0x05);     // 0x05 = RGB565

LCD_WRITE_CMD(0x11);      // 退出睡眠模式
LCD_WRITE_CMD(0x29);      // 开启显示

[ST7789驱动源码]

第二步:设置显示区域

单片机告诉 ST7789:"我要在第 X 列到第 X 列、第 Y 行到第 Y 行这个矩形区域写入数据"。

这通过两个命令实现:

  • CASET(0x2A):设置列范围
  • RASET(0x2B):设置行范围

第三步:写入像素数据

单片机通过 SPI 把像素颜色数据(比如红色 = 0xF800)一个一个发给 ST7789,ST7789 把它们存入 GRAM,然后自动刷新到 LCD 面板上显示。

ST7789 如何驱动 LCD


四、回答你的问题:加上 ST7789 就叫模块吗?

是的,可以这样理解! 更准确地说:

LCD 面板
  +
ST7789V2 驱动芯片(焊在 FPC 排线上,肉眼几乎看不到)
  +
背光 LED
  +
FPC 排线(8个引脚对外接口)
─────────────────────────────
= 你手中的 2.0寸 240×320 LCD TFT 显示屏模块

显示屏模块为什么叫模块

厂商把这些零件封装集成在一起,你拿到手就能直接接线使用,不需要自己去焊接驱动芯片——这就是"模块"的意义。[LCD概述]

💡 驱动 IC 非常小,通常贴在 FPC 与面板的连接部位,你平时看到的那个黑色小芯片或者排线末端的黑色区域,很可能就是 ST7789V2。


五、一张图总结整个认知链条

你的眼睛

   │  看到画面

LCD 面板(液晶玻璃)

   │  电压信号控制每个像素

ST7789V2 驱动芯片(模块内部)

   │  SPI 通信(8个引脚)

单片机(ESP32 等)

   │  你写的代码

你(开发者)

从代码到画面的完整驱动链条

这整个链条,从你写代码,到最终画面显示在屏幕上,就是单片机驱动 LCD 显示屏模块的完整过程!

觉醒,然后燎原。 © 2026 门主引擎